//package com.baosight.tsdb;
//
//import com.alibaba.fastjson.JSONArray;
//import com.alibaba.fastjson.JSONObject;
//import com.baosight.xCyber.dataAdapter.XinsightAgent;
//import com.baosight.xCyber.dataAdapter.pds.IPdsClient;
//
//import java.io.BufferedWriter;
//import java.io.File;
//import java.io.FileWriter;
//import java.io.IOException;
//import java.math.BigDecimal;
//import java.text.ParseException;
//import java.text.SimpleDateFormat;
//import java.util.*;
//
//public class XinsightTester {
//
//    private static IPdsClient pdsClient = new XinsightAgent().getPdsRestClient();
//    private static IPdsClient pdsClientQS = new XinsightAgent("xinsight4QS").getPdsRestClient();
//
//    public static void main(String args[]) throws ParseException {
//
//        //new XinsightAgent()
//        SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//        int index=0;
//        Map<String,PdsRecord> pdsRecordMap=new HashMap<>();
//        while(true){
//            String result = pdsClient.getInstances(index,index+1000);
//            System.out.println(result);
//            JSONObject parseResult = JSONObject.parseObject(result);
//            JSONArray resultRecord = parseResult.getJSONArray("records");
//
//
//            System.out.println(resultRecord.size());
//            for(int i=0;i<resultRecord.size();i++){
//                //System.out.println(i+"  "+resultRecord.getJSONObject(i));
//                PdsRecord object = resultRecord.getObject(i, PdsRecord.class);
//                pdsRecordMap.put(object.getInstance_name(),object);
//            }
//            if(resultRecord.size()<1000){
//                break;
//            }else {
//                index+=1000;
//            }
//        }
//
//        System.out.println("start collect!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
//        String head="timestamp,value\n";
//
//        String[] tagNameList=getTagNameList();
//
//        String startTimeStr="2020-10-01 22:00:00";
//        String endTimeStr="2020-10-01 23:00:00";
//        String startTime=simpleDateFormat.parse(startTimeStr).getTime()+"";
//        String endTime=simpleDateFormat.parse(endTimeStr).getTime()+"";
//        Arrays.asList(tagNameList).stream().parallel().forEach(tagName->{
//            try{
//                PdsRecord pdsRecord=pdsRecordMap.get("Ins_"+tagName);
//                String insId=pdsRecord.instance_id+"";
//                String propId=pdsRecord.properties.get(0).getId()+"";
//                String recordRangeById = pdsClient.getRecordRangeById(insId, propId, startTime, endTime, 0, "");
//                System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~");
//                JSONObject jsonObject1 = JSONObject.parseObject(recordRangeById);
//                if(jsonObject1==null){
//                    System.out.println(recordRangeById);
//                    return;
//                }
//                JSONArray records = jsonObject1.getJSONArray("records");
//                List<String> recordList=new ArrayList<>();
//                PdsDataRecord firstObject = records.getObject(0,PdsDataRecord.class);
//                if(firstObject.quality!=192){
//                    return;
//                }
//                PdsDataRecord secondObject = records.getObject(1,PdsDataRecord.class);
//                if(firstObject.value.compareTo(secondObject.value)==0){
//                    return;
//                }
//                for(int i=0;i<records.size();i++){
//                    JSONObject jsonObject = records.getJSONObject(i);
//                    recordList.add(jsonObject.getString("timestamp")+","+jsonObject.getString("value")+"\n");
//                }
//                output(tagName,head,recordList);
//            }catch (Exception e){
//                e.printStackTrace();
//            }
//        });
//        for(String tagName: Arrays.asList(tagNameList)){
//
//        }
//
//    }
//
//
//    public static void output(String fileName,String head,List<String> rows) {
//        File file=null;
//        FileWriter fileWriter=null;
//        BufferedWriter buffWriter=null;
//        try{
//            String baseFile="C:\\temp\\1580data\\";
//            if(!fileName.endsWith(".csv")){
//                fileName=fileName+".csv";
//            }
//            file=new File(baseFile+fileName);
//            if(file.exists()){
//                file.delete();
//            }
//            file.createNewFile();
//            fileWriter=new FileWriter(baseFile+fileName,true);
//            buffWriter=new BufferedWriter(fileWriter);
//            fileWriter.write(head);
//            for (String row : rows) {
//                buffWriter.write(row);
//            }
//            buffWriter.flush();
//        }catch (IOException e) {
//            e.printStackTrace();
//        }finally {
//            if (fileWriter != null) {
//                try {
//                    fileWriter.close();
//                } catch (IOException e) {
//                    e.printStackTrace();
//                }
//            }
//            if (buffWriter != null) {
//                try {
//                    buffWriter.close();
//                } catch (IOException e) {
//                    e.printStackTrace();
//                }
//            }
//        }
//
//    }
//
//    public static String[] getTagNameList(){
//        return new String[]{
//                "B6906_02_ADH_FM_F3SeqNo",
//                "B6906_02_ADH_FM_F2DPCBendForceInter",
//                "B6906_02_ADH_FM_F4SegLen",
//                "B6906_02_ADH_FM_F2RefGap",
//                "B6906_02_ADH_FM_F6DPCBendForce",
//                "B6906_02_ADH_FM_F4Current",
//                "B6906_02_ADH_FM_OperMode_11",
//                "B6906_02_ADH_FM_F7ExtValidFlag",
//                "B6906_02_ADH_FM_F5CircSpd",
//                "B6906_02_ADH_FM_OperMode",
//                "B6906_02_ADH_FM_F3ScrewDownWS",
//                "B6906_02_ADH_FM_F6StripNo",
//                "B6906_02_ADH_FM_WCLFlag_4",
//                "B6906_02_ADH_FM_F5THRRollCoolUse",
//                "B6906_02_ADH_FM_F7Torque",
//                "B6906_02_ADH_FM_ForceMeasureMode_7",
//                "B6906_02_ADH_FM_F2ScrewDownWS",
//                "B6906_02_ADH_FM_F7DPCWRSpd",
//                "B6906_02_ADH_FM_DPCStripNo",
//                "B6906_02_ADH_FM_InterBend_3",
//                "B6906_02_ADH_FM_F6THRWCLPressure",
//                "B6906_02_ADH_FM_InterSpd_2",
//                "B6906_02_ADH_FM_TELID",
//                "B6906_02_ADH_FM_SCSFlag_2",
//                "B6906_02_ADH_FM_F1Current",
//                "B6906_02_ADH_FM_DCStatus",
//                "B6906_02_ADH_FM_F2DPCBendForce",
//                "B6906_02_ADH_FM_StandRBSMode_12",
//                "B6906_02_ADH_FM_EquipActive_11",
//                "B6906_02_ADH_FM_DCMillStatus_5",
//                "B6906_02_ADH_FM_Flatness_4",
//                "B6906_02_ADH_FM_F3Torque",
//                "B6906_02_ADH_FM_MatrImage_13",
//                "B6906_02_ADH_FM_F5Current",
//                "B6906_02_ADH_FM_ISCValveAvailable_8",
//                "B6906_02_ADH_FM_F4OilLubrication",
//                "B6906_02_ADH_FM_F5THRWCLPressure",
//                "B6906_02_ADH_FM_F3InStandWaterQuant",
//                "B6906_02_ADH_FM_F4MotorRev",
//                "B6906_02_ADH_FM_Flatness_1",
//                "B6906_02_ADH_FM_F1CircSpd",
//                "B6906_02_ADH_FM_OperMode_5",
//                "B6906_02_ADH_FM_FET",
//                "B6906_02_ADH_FM_EquipReady_1",
//                "B6906_02_ADH_FM_F3ExitThick",
//                "B6906_02_ADH_FM_F7ExtMFGThick",
//                "B6906_02_ADH_FM_EquipReady_11",
//                "B6906_02_ADH_FM_F4Torque",
//                "B6906_02_ADH_FM_F6THRWCLvalue",
//                "B6906_02_ADH_FM_InterGap_2",
//                "B6906_02_ADH_FM_CoilerStatus_14",
//                "B6906_02_ADH_FM_F2DPCWRSpd",
//                "B6906_02_ADH_FM_StandRBSMode_5",
//                "B6906_02_ADH_FM_ISCValveAvailable_6",
//                "B6906_02_ADH_FM_EquipStatus_11",
//                "B6906_02_ADH_FM_Flatness_3",
//                "B6906_02_ADH_FM_StandRBSMode_14",
//                "B6906_02_ADH_FM_F3CoolFlag",
//                "B6906_02_ADH_FM_F1SeqNo",
//                "B6906_02_ADH_FM_F1EWSPos",
//                "B6906_02_ADH_FM_FSBStripId",
//                "B6906_02_ADH_FM_DCMillStatus_2",
//                "B6906_02_ADH_FM_F1BwdTension",
//                "B6906_02_ADH_FM_WaterTemp_4",
//                "B6906_02_ADH_FM_F2SegLen",
//                "B6906_02_ADH_FM_F1InStandWaterQuant",
//                "B6906_02_ADH_FM_F2THRRollCoolUse",
//                "B6906_02_ADH_FM_F2RFDS",
//                "B6906_02_ADH_FM_F2DPCRF",
//                "B6906_02_ADH_FM_MillStatus_3",
//                "B6906_02_ADH_FM_InterGap",
//                "B6906_02_ADH_FM_ActualCutMode",
//                "B6906_02_ADH_FM_F4ValidFlag",
//                "B6906_02_ADH_FM_ASSFlag_2",
//                "B6906_02_ADH_FM_OperMode_6",
//                "B6906_02_ADH_FM_StandRBSMode_10",
//                "B6906_02_ADH_FM_OperMode_4",
//                "B6906_02_ADH_FM_StandRBSMode_7",
//                "B6906_02_ADH_FM_F7ShiftPos",
//                "B6906_02_ADH_FM_CoilerStatus_13",
//                "B6906_02_ADH_FM_F6OilLubrication",
//                "B6906_02_ADH_FM_WaterTemp_6",
//                "B6906_02_ADH_FM_F7ExtSegNo",
//                "B6906_02_ADH_FM_MillStatus_6",
//                "B6906_02_ADH_FM_MillStatus_7",
//                "B6906_02_ADH_FM_InterGap_5",
//                "B6906_02_ADH_FM_EquipActive_9",
//                "B6906_02_ADH_FM_StandActive_6",
//                "B6906_02_ADH_FM_F2StandTension",
//                "B6906_02_ADH_FM_ForceMeasureMode_1",
//                "B6906_02_ADH_FM_MainDrvCurrOver",
//                "B6906_02_ADH_FM_InterBend_4",
//                "B6906_02_ADH_FM_F2StripId",
//                "B6906_02_ADH_FM_DesStatus_9",
//                "B6906_02_ADH_FM_F5THRWRRollSpeed",
//                "B6906_02_ADH_FM_Flatness_2",
//                "B6906_02_ADH_FM_StandActive_7",
//                "B6906_02_ADH_FM_F7ScrewDownWS",
//                "B6906_02_ADH_FM_F1DPCMetalOnFlag",
//                "B6906_02_ADH_FM_F4THRFR",
//                "B6906_02_ADH_FM_F4ScrewDownDS",
//                "B6906_02_ADH_FM_EquipStatus_1",
//                "B6906_02_ADH_FM_F2CoolFlag",
//                "B6906_02_ADH_FM_F7LpAngle",
//                "B6906_02_ADH_FM_InterSG_1",
//                "B6906_02_ADH_FM_F4StripNo",
//                "B6906_02_ADH_FM_EquipReady_7",
//                "B6906_02_ADH_FM_MainDrvCurrOver_4",
//                "B6906_02_ADH_FM_StandRBSMode_3",
//                "B6906_02_ADH_FM_WCLFlag_3",
//                "B6906_02_ADH_FM_F6MillRev",
//                "B6906_02_ADH_FM_F5THRValidFlag",
//                "B6906_02_ADH_FM_F1StripId",
//                "B6906_02_ADH_FM_F4THRRollOilUse",
//                "B6906_02_ADH_FM_F4DPCValidFlag",
//                "B6906_02_ADH_FM_F5StandTension",
//                "B6906_02_ADH_FM_F6Current",
//                "B6906_02_ADH_FM_F7MillRev",
//                "B6906_02_ADH_FM_F1ScrewDownWS",
//                "B6906_02_ADH_FM_F1ExitTemp",
//                "B6906_02_ADH_FM_FLCValidFlag",
//                "B6906_02_ADH_FM_StandRBSMode_9",
//                "B6906_02_ADH_FM_MainDrvCurrOver_6",
//                "B6906_02_ADH_FM_F2THRStandUse",
//                "B6906_02_ADH_FM_F1THRFR",
//                "B6906_02_ADH_FM_F7MotorRev",
//                "B6906_02_ADH_FM_MatrImage_3",
//                "B6906_02_ADH_FM_F7THRWCLPressure",
//                "B6906_02_ADH_FM_F2OilLubMode",
//                "B6906_02_ADH_FM_CrownValidFlag",
//                "B6906_02_ADH_FM_InterSG_5",
//                "B6906_02_ADH_FM_MatrImage",
//                "B6906_02_ADH_FM_F4CoolFlag",
//                "B6906_02_ADH_FM_F1THRRollCoolUse",
//                "B6906_02_ADH_FM_F5ValidFlag",
//                "B6906_02_ADH_FM_ForceMeasureMode_6",
//                "B6906_02_ADH_FM_F7THRValidFlag",
//                "B6906_02_ADH_FM_OperMode_7",
//                "B6906_02_ADH_FM_F4PcAngle",
//                "B6906_02_ADH_FM_F4RFWS",
//                "B6906_02_ADH_FM_EquipStatus",
//                "B6906_02_ADH_FM_F5THRWCLvalue",
//                "B6906_02_ADH_FM_F1EWSRF",
//                "B6906_02_ADH_FM_StandActive_2",
//                "B6906_02_ADH_FM_F1ECircSpd",
//                "B6906_02_ADH_FM_F3THRValidFlag",
//                "B6906_02_ADH_FM_F7StripNo",
//                "B6906_02_ADH_FM_F7CoolFlag",
//                "B6906_02_ADH_FM_F3MillRev",
//                "B6906_02_ADH_FM_F7StandTension",
//                "B6906_02_ADH_FM_F5PreStandSpd",
//                "B6906_02_ADH_FM_WaterTemp_3",
//                "B6906_02_ADH_FM_StandActive_3",
//                "B6906_02_ADH_FM_F1THRStandUse",
//                "B6906_02_ADH_FM_F2OilLubrication",
//                "B6906_02_ADH_FM_MatrImage_16",
//                "B6906_02_ADH_FM_F7ValidFlag",
//                "B6906_02_ADH_FM_F7SeqNo",
//                "B6906_02_ADH_FM_F3SegLen",
//                "B6906_02_ADH_FM_F7StripId",
//                "B6906_02_ADH_FM_WCLPres_3",
//                "B6906_02_ADH_FM_F7DPCMetalOnFlag",
//                "B6906_02_ADH_FM_WCLPres_2",
//                "B6906_02_ADH_FM_WCLFlag_5",
//                "B6906_02_ADH_FM_F4OilLubMode",
//                "B6906_02_ADH_FM_F7ExtWidth",
//                "B6906_02_ADH_FM_InterBend_2",
//                "B6906_02_ADH_FM_F4DPCBendForceInter",
//                "B6906_02_ADH_FM_F3StandTension",
//                "B6906_02_ADH_FM_WCLFlag_7",
//                "B6906_02_ADH_FM_F5DPCWRSpd",
//                "B6906_02_ADH_FM_DCMillStatus",
//                "B6906_02_ADH_FM_Wedge_75",
//                "B6906_02_ADH_FM_InterBend_5",
//                "B6906_02_ADH_FM_F6Flux",
//                "B6906_02_ADH_FM_F6CircSpd",
//                "B6906_02_ADH_FM_EquipReady_2",
//                "B6906_02_ADH_FM_InterSpd",
//                "B6906_02_ADH_FM_F4DPCBendForce",
//                "B6906_02_ADH_FM_F1OilLubrication",
//                "B6906_02_ADH_FM_F2PreStandSpd",
//                "B6906_02_ADH_FM_MillStatus_8",
//                "B6906_02_ADH_FM_F3OilLubrication",
//                "B6906_02_ADH_FM_EquipActive_5",
//                "B6906_02_ADH_FM_InterGap_1",
//                "B6906_02_ADH_FM_F3THRRollOilUse",
//                "B6906_02_ADH_FM_FSBStripNo",
//                "B6906_02_ADH_FM_F5ExitTemp",
//                "B6906_02_ADH_FM_StandPCReady_1",
//                "B6906_02_ADH_FM_F7THRWRRollSpeed",
//                "B6906_02_ADH_FM_F4StandTension",
//                "B6906_02_ADH_FM_MatrImage_6",
//                "B6906_02_ADH_FM_F6ValidFlag",
//                "B6906_02_ADH_FM_StandActive_8",
//                "B6906_02_ADH_FM_InterSpd_7",
//                "B6906_02_ADH_FM_F3DPCRF",
//                "B6906_02_ADH_FM_ISCValveAvailable_4",
//                "B6906_02_ADH_FM_MillStatus",
//                "B6906_02_ADH_FM_CoilerStatus_16",
//                "B6906_02_ADH_FM_F7BendForce",
//                "B6906_02_ADH_FM_F6BwdTension",
//                "B6906_02_ADH_FM_FSBSegNo",
//                "B6906_02_ADH_FM_F5THRRollPower",
//                "B6906_02_ADH_FM_F7THRStandUse",
//                "B6906_02_ADH_FM_F1LpAngle",
//                "B6906_02_ADH_FM_F1StandTension",
//                "B6906_02_ADH_FM_F6THRWRRollSpeed",
//                "B6906_02_ADH_FM_F2DPCMetalOnFlag",
//                "B6906_02_ADH_FM_InterBend_6",
//                "B6906_02_ADH_FM_WaterTemp_2",
//                "B6906_02_ADH_FM_F4RefGapComp",
//                "B6906_02_ADH_FM_F6LpAngle",
//                "B6906_02_ADH_FM_EquipActive_6",
//                "B6906_02_ADH_FM_F5ScrewDownDS",
//                "B6906_02_ADH_FM_WaterTemp_1",
//                "B6906_02_ADH_FM_F4THRWCLvalue",
//                "B6906_02_ADH_FM_Flatness_5",
//                "B6906_02_ADH_FM_F3ExitTemp",
//                "B6906_02_ADH_FM_InterGap_4",
//                "B6906_02_ADH_FM_EquipActive_3",
//                "B6906_02_ADH_FM_OperMode_13",
//                "B6906_02_ADH_FM_F4PreStandSpd",
//                "B6906_02_ADH_FM_F1ScrewDownDS",
//                "B6906_02_ADH_FM_F7ExtFDT",
//                "B6906_02_ADH_FM_F5OilLubrication",
//                "B6906_02_ADH_FM_InterSpd_8",
//                "B6906_02_ADH_FM_F7DPCValidFlag",
//                "B6906_02_ADH_FM_FSBValidFlag_14",
//                "B6906_02_ADH_FM_F5THRStandUse",
//                "B6906_02_ADH_FM_StandPCReady_2",
//                "B6906_02_ADH_FM_F1RefGap",
//                "B6906_02_ADH_FM_F3THRFR",
//                "B6906_02_ADH_FM_StandActive_5",
//                "B6906_02_ADH_FM_F2MotorRev",
//                "B6906_02_ADH_FM_F2THRWRRollSpeed",
//                "B6906_02_ADH_FM_Crown_50",
//                "B6906_02_ADH_FM_F3BendForce",
//                "B6906_02_ADH_FM_F2DPCValidFlag",
//                "B6906_02_ADH_FM_F5DPCBendForce",
//                "B6906_02_ADH_FM_SpdStatus",
//                "B6906_02_ADH_FM_F3DPCWRSpd",
//                "B6906_02_ADH_FM_F7THRWCLvalue",
//                "B6906_02_ADH_FM_EquipActive",
//                "B6906_02_ADH_FM_F6SeqNo",
//                "B6906_02_ADH_FM_StandPCReady",
//                "B6906_02_ADH_FM_F2ExitTemp",
//                "B6906_02_ADH_FM_F4BwdTension",
//                "B6906_02_ADH_FM_DKSFlag_1",
//                "B6906_02_ADH_FM_InterBend_8",
//                "B6906_02_ADH_FM_F7THRRollCoolUse",
//                "B6906_02_ADH_FM_TELLEN",
//                "B6906_02_ADH_FM_F2InStandWaterQuant",
//                "B6906_02_ADH_FM_CoilerStatus",
//                "B6906_02_ADH_FM_InterGap_6",
//                "B6906_02_ADH_FM_WCLFlag_2",
//                "B6906_02_ADH_FM_F3CircSpd",
//                "B6906_02_ADH_FM_F2THRValidFlag",
//                "B6906_02_ADH_FM_InterSpd_3",
//                "B6906_02_ADH_FM_InterSG_4",
//                "B6906_02_ADH_FM_F3ScrewDownDS",
//                "B6906_02_ADH_FM_StandRBSMode_13",
//                "B6906_02_ADH_FM_StandRBSMode_11",
//                "B6906_02_ADH_FM_ISCValveAvailable_2",
//                "B6906_02_ADH_FM_F7RFWS",
//                "B6906_02_ADH_FM_F6RFWS",
//                "B6906_02_ADH_FM_F4ExitTemp",
//                "B6906_02_ADH_FM_F6RFDS",
//                "B6906_02_ADH_FM_F2RefGapComp",
//                "B6906_02_ADH_FM_F5OilLubMode",
//                "B6906_02_ADH_FM_MatrImage_5",
//                "B6906_02_ADH_FM_MFGThick",
//                "B6906_02_ADH_FM_Wedge_25",
//                "B6906_02_ADH_FM_F5BwdTension",
//                "B6906_02_ADH_FM_F7InStandWaterQuant",
//                "B6906_02_ADH_FM_F3THRWRRollSpeed",
//                "B6906_02_ADH_FM_F5LpAngle",
//                "B6906_02_ADH_FM_CSTailFlag",
//                "B6906_02_ADH_FM_StandActive_1",
//                "B6906_02_ADH_FM_F2MillRev",
//                "B6906_02_ADH_FM_EquipStatus_3",
//                "B6906_02_ADH_FM_WCLPres_6",
//                "B6906_02_ADH_FM_F6THRRollPower",
//                "B6906_02_ADH_FM_MatrImage_11",
//                "B6906_02_ADH_FM_FSBValidFlag",
//                "B6906_02_ADH_FM_F1MotorRev",
//                "B6906_02_ADH_FM_F7DPCBendForce",
//                "B6906_02_ADH_FM_WCLPres_7",
//                "B6906_02_ADH_FM_WCLFlag_6",
//                "B6906_02_ADH_FM_EquipReady_9",
//                "B6906_02_ADH_FM_SpdStatus_16",
//                "B6906_02_ADH_FM_F4InStandWaterQuant",
//                "B6906_02_ADH_FM_F1EMotorRev",
//                "B6906_02_ADH_FM_TELCNT",
//                "B6906_02_ADH_FM_MatrImage_15",
//                "B6906_02_ADH_FM_F5ScrewDownWS",
//                "B6906_02_ADH_FM_F6DPCValidFlag",
//                "B6906_02_ADH_FM_F4MillRev",
//                "B6906_02_ADH_FM_F2ValidFlag",
//                "B6906_02_ADH_FM_EquipReady_8",
//                "B6906_02_ADH_FM_EquipReady_4",
//                "B6906_02_ADH_FM_F5MillRev",
//                "B6906_02_ADH_FM_SpdStatus_14",
//                "B6906_02_ADH_FM_StandActive_4",
//                "B6906_02_ADH_FM_F6ScrewDownDS",
//                "B6906_02_ADH_FM_F4LpAngle",
//                "B6906_02_ADH_FM_F1ExitThick",
//                "B6906_02_ADH_FM_F3Current",
//                "B6906_02_ADH_FM_CoilerStatus_15",
//                "B6906_02_ADH_FM_DPCStripId",
//                "B6906_02_ADH_FM_F3RefGap",
//                "B6906_02_ADH_FM_F5THRFR",
//                "B6906_02_ADH_FM_F5ExitThick",
//                "B6906_02_ADH_FM_F6THRStandUse",
//                "B6906_02_ADH_FM_F1DPCBendForce",
//                "B6906_02_ADH_FM_F7BwdTension",
//                "B6906_02_ADH_FM_F2StripNo",
//                "B6906_02_ADH_FM_F7OilLubMode",
//                "B6906_02_ADH_FM_F3LpAngle",
//                "B6906_02_ADH_FM_F2Current",
//                "B6906_02_ADH_FM_F7ExtLength",
//                "B6906_02_ADH_FM_F5CoolFlag",
//                "B6906_02_ADH_FM_WaterTemp_5",
//                "B6906_02_ADH_FM_F2ExitThick",
//                "B6906_02_ADH_FM_F7RFDS",
//                "B6906_02_ADH_FM_F4DPCMetalOnFlag",
//                "B6906_02_ADH_FM_EquipReady_3",
//                "B6906_02_ADH_FM_F7ExtStripNo",
//                "B6906_02_ADH_FM_F1THRRollOilUse",
//                "B6906_02_ADH_FM_F7Flux",
//                "B6906_02_ADH_FM_ISCValveAvailable_5",
//                "B6906_02_ADH_FM_OperMode_9",
//                "B6906_02_ADH_FM_F6StandTension",
//                "B6906_02_ADH_FM_F7OilLubrication",
//                "B6906_02_ADH_FM_StandRBSMode_1",
//                "B6906_02_ADH_FM_FSBValidFlag_9",
//                "B6906_02_ADH_FM_F1SegLen",
//                "B6906_02_ADH_FM_WaterTemp_7",
//                "B6906_02_ADH_FM_Crown_25",
//                "B6906_02_ADH_FM_F4THRRollPower",
//                "B6906_02_ADH_FM_MatrImage_8",
//                "B6906_02_ADH_FM_InterSG_2",
//                "B6906_02_ADH_FM_ForceMeasureMode",
//                "B6906_02_ADH_FM_F6DPCRF",
//                "B6906_02_ADH_FM_OperMode_2",
//                "B6906_02_ADH_FM_F4ScrewDownWS",
//                "B6906_02_ADH_FM_InterSG_6",
//                "B6906_02_ADH_FM_F3THRWCLvalue",
//                "B6906_02_ADH_FM_EquipReady_10",
//                "B6906_02_ADH_FM_DKSFlag_2",
//                "B6906_02_ADH_FM_F5InStandWaterQuant",
//                "B6906_02_ADH_FM_F6Torque",
//                "B6906_02_ADH_FM_F7ExitThick",
//                "B6906_02_ADH_FM_F5DPCRF",
//                "B6906_02_ADH_FM_F6CoolFlag",
//                "B6906_02_ADH_FM_F4CircSpd",
//                "B6906_02_ADH_FM_F4THRWRRollSpeed",
//                "B6906_02_ADH_FM_F3THRRollPower",
//                "B6906_02_ADH_FM_F2LpAngle",
//                "B6906_02_ADH_FM_F6THRFR",
//                "B6906_02_ADH_FM_MillStatus_4",
//                "B6906_02_ADH_FM_InterGap_8",
//                "B6906_02_ADH_FM_F3PreStandSpd",
//                "B6906_02_ADH_FM_WCLPres_1",
//                "B6906_02_ADH_FM_F6DPCWRSpd",
//                "B6906_02_ADH_FM_F3DPCBendForceInter",
//                "B6906_02_ADH_FM_Crown_100",
//                "B6906_02_ADH_FM_DesStatus_3",
//                "B6906_02_ADH_FM_MatrImage_10",
//                "B6906_02_ADH_FM_CrownStatus",
//                "B6906_02_ADH_FM_F1RefGapComp",
//                "B6906_02_ADH_FM_OperMode_3",
//                "B6906_02_ADH_FM_F2CircSpd",
//                "B6906_02_ADH_FM_F5BendForce",
//                "B6906_02_ADH_FM_F7THRRollPower",
//                "B6906_02_ADH_FM_F4DPCRF",
//                "B6906_02_ADH_FM_F3THRStandUse",
//                "B6906_02_ADH_FM_F4DPCWRSpd",
//                "B6906_02_ADH_FM_InterSG_7",
//                "B6906_02_ADH_FM_F6RefGap",
//                "B6906_02_ADH_FM_EquipActive_10",
//                "B6906_02_ADH_FM_ASSFlag_1",
//                "B6906_02_ADH_FM_SendTime",
//                "B6906_02_ADH_FM_F7DPCBendForceInter",
//                "B6906_02_ADH_FM_OperMode_14",
//                "B6906_02_ADH_FM_MainDrvCurrOver_5",
//                "B6906_02_ADH_FM_FETValidFlag",
//                "B6906_02_ADH_FM_F6ExitThick",
//                "B6906_02_ADH_FM_F1THRWCLvalue",
//                "B6906_02_ADH_FM_F7ExitTemp",
//                "B6906_02_ADH_FM_F7RefGapComp",
//                "B6906_02_ADH_FM_F6StripId",
//                "B6906_02_ADH_FM_MainDrvCurrOver_8",
//                "B6906_02_ADH_FM_DesStatus_8",
//                "B6906_02_ADH_FM_F6ShiftPos",
//                "B6906_02_ADH_FM_OperMode_8",
//                "B6906_02_ADH_FM_ForceMeasureMode_3",
//                "B6906_02_ADH_FM_OperMode_12",
//                "B6906_02_ADH_FM_MatrImage_9",
//                "B6906_02_ADH_FM_HeadCutLen",
//                "B6906_02_ADH_FM_EquipReady_6",
//                "B6906_02_ADH_FM_EquipActive_8",
//                "B6906_02_ADH_FM_F2THRRollPower",
//                "B6906_02_ADH_FM_F5Flux",
//                "B6906_02_ADH_FM_FSBValidFlag_13",
//                "B6906_02_ADH_FM_DESEntry",
//                "B6906_02_ADH_FM_FETTemp",
//                "B6906_02_ADH_FM_MatrImage_7",
//                "B6906_02_ADH_FM_F1THRWRRollSpeed",
//                "B6906_02_ADH_FM_InterGap_3",
//                "B6906_02_ADH_FM_F5RefGap",
//                "B6906_02_ADH_FM_OperMode_15",
//                "B6906_02_ADH_FM_EquipStatus_8",
//                "B6906_02_ADH_FM_F4RFDS",
//                "B6906_02_ADH_FM_FSBValidFlag_15",
//                "B6906_02_ADH_FM_F7SegLen",
//                "B6906_02_ADH_FM_DCMillStatus_3",
//                "B6906_02_ADH_FM_EquipActive_7",
//                "B6906_02_ADH_FM_F2THRFR",
//                "B6906_02_ADH_FM_FDTValidFlag",
//                "B6906_02_ADH_FM_F2THRRollOilUse",
//                "B6906_02_ADH_FM_F3RFWS",
//                "B6906_02_ADH_FM_F1DPCValidFlag",
//                "B6906_02_ADH_FM_EquipActive_2",
//                "B6906_02_ADH_FM_F1BendForce",
//                "B6906_02_ADH_FM_F6DPCBendForceInter",
//                "B6906_02_ADH_FM_InterSG_3",
//                "B6906_02_ADH_FM_StandPCReady_5",
//                "B6906_02_ADH_FM_F3DPCValidFlag",
//                "B6906_02_ADH_FM_Wedge_100",
//                "B6906_02_ADH_FM_InterSpd_6",
//                "B6906_02_ADH_FM_F5DPCBendForceInter",
//                "B6906_02_ADH_FM_StandRBSMode_8",
//                "B6906_02_ADH_FM_StandRBSMode_2",
//                "B6906_02_ADH_FM_EquipReady",
//                "B6906_02_ADH_FM_ISCValveAvailable_7",
//                "B6906_02_ADH_FM_F1EFlux",
//                "B6906_02_ADH_FM_OperMode_10",
//                "B6906_02_ADH_FM_F1THRWCLPressure",
//                "B6906_02_ADH_FM_MatrImage_2",
//                "B6906_02_ADH_FM_F3Flux",
//                "B6906_02_ADH_FM_ISCValveAvailable_1",
//                "B6906_02_ADH_FM_F4THRStandUse",
//                "B6906_02_ADH_FM_F4THRValidFlag",
//                "B6906_02_ADH_FM_FLCStatus",
//                "B6906_02_ADH_FM_F6THRRollOilUse",
//                "B6906_02_ADH_FM_F1DPCRF",
//                "B6906_02_ADH_FM_WCLFlag_1",
//                "B6906_02_ADH_FM_DesStatus_4",
//                "B6906_02_ADH_FM_StandPCReady_6",
//                "B6906_02_ADH_FM_F7THRRollOilUse",
//                "B6906_02_ADH_FM_WCLPres_4",
//                "B6906_02_ADH_FM_F2PcAngle",
//                "B6906_02_ADH_FM_F1Flux",
//                "B6906_02_ADH_FM_MillStatus_5",
//                "B6906_02_ADH_FM_MillStatus_1",
//                "B6906_02_ADH_FM_F4StripId",
//                "B6906_02_ADH_FM_F1EDSPos",
//                "B6906_02_ADH_FM_ISCValveAvailable",
//                "B6906_02_ADH_FM_F3OilLubMode",
//                "B6906_02_ADH_FM_InterSG",
//                "B6906_02_ADH_FM_F7CircSpd",
//                "B6906_02_ADH_FM_ForceMeasureMode_2",
//                "B6906_02_ADH_FM_F3StripNo",
//                "B6906_02_ADH_FM_F2RFWS",
//                "B6906_02_ADH_FM_F6SegLen",
//                "B6906_02_ADH_FM_OperMode_1",
//                "B6906_02_ADH_FM_FDTTemp",
//                "B6906_02_ADH_FM_F5RFDS",
//                "B6906_02_ADH_FM_CoilerStatus_12",
//                "B6906_02_ADH_FM_InterBend_7",
//                "B6906_02_ADH_FM_F2THRWCLPressure",
//                "B6906_02_ADH_FM_F7ScrewDownDS",
//                "B6906_02_ADH_FM_EquipStatus_10",
//                "B6906_02_ADH_FM_F1DPCWRSpd",
//                "B6906_02_ADH_FM_EquipStatus_7",
//                "B6906_02_ADH_FM_F1THRRollPower",
//                "B6906_02_ADH_FM_EquipStatus_2",
//                "B6906_02_ADH_FM_F3THRWCLPressure",
//                "B6906_02_ADH_FM_InterSpd_5",
//                "B6906_02_ADH_FM_F5Torque",
//                "B6906_02_ADH_FM_F7THRFR",
//                "B6906_02_ADH_FM_EquipStatus_5",
//                "B6906_02_ADH_FM_F4SeqNo",
//                "B6906_02_ADH_FM_F5SeqNo",
//                "B6906_02_ADH_FM_DesStatus_5",
//                "B6906_02_ADH_FM_F6ScrewDownWS",
//                "B6906_02_ADH_FM_F4ExitThick",
//                "B6906_02_ADH_FM_F3DPCBendForce",
//                "B6906_02_ADH_FM_F4THRRollCoolUse",
//                "B6906_02_ADH_FM_F3DPCMetalOnFlag",
//                "B6906_02_ADH_FM_EquipActive_4",
//                "B6906_02_ADH_FM_StandPCReady_3",
//                "B6906_02_ADH_FM_InterGap_7",
//                "B6906_02_ADH_FM_F5DPCMetalOnFlag",
//                "B6906_02_ADH_FM_F1EMillCurrent",
//                "B6906_02_ADH_FM_F6BendForce",
//                "B6906_02_ADH_FM_ISCValveAvailable_3",
//                "B6906_02_ADH_FM_F3RFDS",
//                "B6906_02_ADH_FM_F7RefGap",
//                "B6906_02_ADH_FM_DesStatus_7",
//                "B6906_02_ADH_FM_F1CoolFlag",
//                "B6906_02_ADH_FM_F1ValidFlag",
//                "B6906_02_ADH_FM_F2THRWCLvalue",
//                "B6906_02_ADH_FM_InterSG_8",
//                "B6906_02_ADH_FM_SpdStatus_15",
//                "B6906_02_ADH_FM_MatrImage_14",
//                "B6906_02_ADH_FM_InterSpd_4",
//                "B6906_02_ADH_FM_F7DPCRF",
//                "B6906_02_ADH_FM_F5ShiftPos",
//                "B6906_02_ADH_FM_F3MotorRev",
//                "B6906_02_ADH_FM_F6THRRollCoolUse",
//                "B6906_02_ADH_FM_F1RFDS",
//                "B6906_02_ADH_FM_EquipStatus_9",
//                "B6906_02_ADH_FM_SCSFlag_1",
//                "B6906_02_ADH_FM_F1Torque",
//                "B6906_02_ADH_FM_StandActive",
//                "B6906_02_ADH_FM_MainDrvCurrOver_3",
//                "B6906_02_ADH_FM_F3StripId",
//                "B6906_02_ADH_FM_ForceMeasureMode_4",
//                "B6906_02_ADH_FM_StandRBSMode",
//                "B6906_02_ADH_FM_Crown_75",
//                "B6906_02_ADH_FM_TailCutLen",
//                "B6906_02_ADH_FM_F6PreStandSpd",
//                "B6906_02_ADH_FM_F1PcAngle",
//                "B6906_02_ADH_FM_F2Torque",
//                "B6906_02_ADH_FM_F6InStandWaterQuant",
//                "B6906_02_ADH_FM_DESExit",
//                "B6906_02_ADH_FM_StandRBSMode_6",
//                "B6906_02_ADH_FM_F1StripNo",
//                "B6906_02_ADH_FM_F2Flux",
//                "B6906_02_ADH_FM_EquipStatus_4",
//                "B6906_02_ADH_FM_StandPCReady_4",
//                "B6906_02_ADH_FM_EquipStatus_6",
//                "B6906_02_ADH_FM_MainDrvCurrOver_7",
//                "B6906_02_ADH_FM_F2ScrewDownDS",
//                "B6906_02_ADH_FM_F5DPCValidFlag",
//                "B6906_02_ADH_FM_DesStatus_6",
//                "B6906_02_ADH_FM_F5THRRollOilUse",
//                "B6906_02_ADH_FM_MatrImage_12",
//                "B6906_02_ADH_FM_F5SegLen",
//                "B6906_02_ADH_FM_OperMode_16",
//                "B6906_02_ADH_FM_F3BwdTension",
//                "B6906_02_ADH_FM_F1ERollTorque",
//                "B6906_02_ADH_FM_F6THRValidFlag",
//                "B6906_02_ADH_FM_F5StripId",
//                "B6906_02_ADH_FM_EquipActive_1",
//                "B6906_02_ADH_FM_DesStatus",
//                "B6906_02_ADH_FM_F6DPCMetalOnFlag",
//                "B6906_02_ADH_FM_F5StripNo",
//                "B6906_02_ADH_FM_F3ValidFlag",
//                "B6906_02_ADH_FM_F7Current",
//                "B6906_02_ADH_FM_F7PreStandSpd",
//                "B6906_02_ADH_FM_ForceMeasureMode_5",
//                "B6906_02_ADH_FM_F4THRWCLPressure",
//                "B6906_02_ADH_FM_F5RefGapComp",
//                "B6906_02_ADH_FM_F4RefGap",
//                "B6906_02_ADH_FM_F1PreStandSpd",
//                "B6906_02_ADH_FM_F6ExitTemp",
//                "B6906_02_ADH_FM_F5RFWS",
//                "B6906_02_ADH_FM_InterBend",
//                "B6906_02_ADH_FM_Wedge_50",
//                "B6906_02_ADH_FM_F1EDSRF",
//                "B6906_02_ADH_FM_F1MillRev",
//                "B6906_02_ADH_FM_DCMillStatus_4",
//                "B6906_02_ADH_FM_MillStatus_9",
//                "B6906_02_ADH_FM_FSBValidFlag_1",
//                "B6906_02_ADH_FM_MatrImage_1",
//                "B6906_02_ADH_FM_F1RFWS",
//                "B6906_02_ADH_FM_F2BwdTension",
//                "B6906_02_ADH_FM_F7ExtStripId",
//                "B6906_02_ADH_FM_DCMillStatus_1",
//                "B6906_02_ADH_FM_F4BendForce",
//                "B6906_02_ADH_FM_F3THRRollCoolUse",
//                "B6906_02_ADH_FM_StandRBSMode_4",
//                "B6906_02_ADH_FM_F1THRValidFlag",
//                "B6906_02_ADH_FM_EquipReady_5",
//                "B6906_02_ADH_FM_MainDrvCurrOver_2",
//                "B6906_02_ADH_FM_F6OilLubMode",
//                "B6906_02_ADH_FM_F4Flux",
//                "B6906_02_ADH_FM_F1EMillRev",
//                "B6906_02_ADH_FM_InterSpd_1",
//                "B6906_02_ADH_FM_F1OilLubMode",
//                "B6906_02_ADH_FM_F1DPCBendForceInter",
//                "B6906_02_ADH_FM_F3PcAngle",
//                "B6906_02_ADH_FM_MillStatus_2",
//                "B6906_02_ADH_FM_F6RefGapComp",
//                "B6906_02_ADH_FM_WCLPres_5",
//                "B6906_02_ADH_FM_F3RefGapComp",
//                "B6906_02_ADH_FM_MatrImage_4",
//                "B6906_02_ADH_FM_F6MotorRev",
//                "B6906_02_ADH_FM_F2BendForce",
//                "B6906_02_ADH_FM_F2SeqNo",
//                "B6906_02_ADH_FM_F5MotorRev"
//        };
//    }
//
//}
